Modeling Interactions in Feature Oriented Software Designs1
نویسندگان
چکیده
Feature Oriented Programming (FOP) is a general theory of software development where programs are assembled by composing feature modules. A feature X interacts structurally with another feature Y by changing Y’s source code. We advance FOP by proposing an algebraic theory of structural feature interactions that models feature interactions as derivatives. We use our theory to show how a legacy Java application can be refactored into a feature-based design.
منابع مشابه
Program Committee Implementing Feature Variability for Models and Code with Projectional Language Workbenches . . . . 41 Markus Voelter Feature Oriented-programming: Back to the Future Automating Energy Optimization with Features
Feature-oriented programming has its origin in the old quest of computer science: modular composition of software “artifacts” in software development. While there exist many notions of modularity and composition, feature-oriented programming tackles the case of highly-entangled software features where typical module or component concepts fail. The reasons for this are feature interactions and d...
متن کاملFeature-Based Composition of Software Architectures
In Software Product Lines variability refers to the definition and utilization of differences between several products. Feature Diagrams (FD) are a well-known approach to express variability, and can be used to automate the derivation process. Nevertheless, this may be highly complex due to possible interactions between selected features and the artifacts realizing them. Deriving concrete produ...
متن کاملFeature Modeling for Service Variability Management in Service-Oriented Architectures
Service Oriented Architecture (SOA) has emerged as a model for distributed software development that promotes flexible deployment and reuse. Software product lines (SPL) promote reusable application development for product families. Service oriented systems change to respond to changing clients’ requirements. As they change, service oriented systems can be modeled as service families similar to...
متن کاملFeature Interactions and Software Derivatives
Feature Oriented Programming (FOP) merges the studies of feature modularity, generative programming, and compositional programming. We advance FOP by proposing the concept of software derivatives, which represent feature interactions. We apply the theory of software derivatives to refactoring legacy Java applications into FOP designs.
متن کاملUsing aspect-oriented state machines for detecting and resolving feature interactions
Composing different features in a software system may lead to conflicting situations. The presence of one feature may interfere with the correct functionality of another feature, resulting in an incorrect behavior of the system. In this work we present an approach to manage feature interactions. A formal model, using Finite State Machines (FSM) and Aspect-Oriented (AO) technology, is used to sp...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2005